<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		功能需求：添加的书本的id是原来所有书本的最大值+1
			从书本数组中找出id最大的书本
				1、书本数组是一个对象数组
				2、实现方式一，简化成一个纯数字的数组，通过遍历将id单保存到另一个数组中
					Math.max()或Math.max().apply()找出最大值
				3、实现方式二，假设法，假第一条的数据的id是最大值
				4、实现方式三，先将数组以id做从小到大的排序，再取数组的最后一条
		数组的基本使用
			定义
			赋值
			长度
			遍历
			增删改
		数组高级使用
			最大值、最小值、平均值、排序
		<script type="text/javascript">
			let arr = [-1, -4, -6, -2, -3, -5];
			//找最大、最小、求平均数，
			
			//方式一
			// console.log(arr);
			// console.log(arr.toString());
			//...运算符，如果加在数组前面，表示将数组的元素一一对应到函数的形参上
			// console.log(...arr);
			// console.log(Math.max(...arr));//推荐
			// console.log(Math.max.apply(null, arr));
			//效果等同...arr
			// console.log(Math.max(arr[0], arr[1], arr[2], arr[3], arr[4], arr[5]))
			// console.log(Math.max(arr.toString()))：无效的
			//最大值
			max(...arr);
			function max() {
				let zuidazhi = arguments[0];//假设第一元素是最大值
				for(let item of arguments) {
					// console.log(item);
					if(zuidazhi < item) {
						zuidazhi = item;
					}
				}
				console.log(zuidazhi);
			}
			//最小值
			min(...arr);
			function min() {
				let zuixiao  = arguments[0];//假设第一元素是最小值
				for(let item of arguments) {
					// console.log(item);
					if(zuixiao > item) {
						zuixiao = item;
					}
				}
				console.log(zuixiao);
			}
			
			let books = [
				{id: 1, name: 'Java从入门到放弃', price: 80, tdate: '2020-07-01', count: 1, account: "hehe"},
				{id: 2, name: 'Vue从入门到放弃', price: 90, tdate: '2020-07-02', count: 1, account: "haha"},
				{id: 3, name: 'Mysql从入门到放弃', price: 100.01, tdate: '2020-07-03', count: 1, account: "hehe"},
				{id: 4, name: '啥都从入门到放弃', price: 70.00, tdate: '2020-07-04', count: 1, account: "haha"},
			];
			// console.log(typeof books);
			console.log(objmaxid(books).id + 1);
			/**
			 * @param {Object} arr
			 * 找出id最大的记录
			 */
			function objmaxid(arr) {
				if(arr instanceof Array) {//要求arr参数必须是数组
					// console.log("arr是一个数组")
					let max = arr[0];//最大记录
					for(let item of arr) {
						if(max.id < item.id) {
							max = item;
						}
					}
					
					return max;
				}
			}
		</script>
	</body>
</html>
